package com.game.Maze.GUI;

import com.game.Maze.Utils.IActionExecutor;

import android.view.View;
import android.view.View.OnClickListener;

/*
 * Базовый класс для обработчиков касаний кнопок
 */
public class BaseClickListener implements OnClickListener
{
  private int m_idButton = -1;
  private IActionExecutor m_actionExecutor = null;
  
  public void onClick(View v) throws NullPointerException
  {
    // Вызываем обработчик действия
    m_actionExecutor.doExecuteAction(getId());
  }
  
  public int getId()
  {
    return m_idButton;
  }

  public BaseClickListener(int idButton, IActionExecutor actionExecutor)
  {
    if (actionExecutor == null)
      throw new NullPointerException();

    m_idButton = idButton;
    m_actionExecutor = actionExecutor;
  }
}
